/*******************************************************************************
* Project: QSAR(Cute Software Architecture) 
*
* Copyright: Copyright(C) 2024 by YuetingBen, All Rights Reserved
*
* File name: CanTpRte.h
*
* Brief: ;
*
* Author: Yueting.Ben
*
* Module: CANTP
*
* Revision:
* --------------------------------------------------------------------------------
* v0.1: 
* --Yueting.Ben, 2024-02-26 
* --Initial release

**********************************************************************************/
#ifndef CANTPRTE_H
#define CANTPRTE_H

/** HEADER FILES **/
#include "CanIfType.h"


/** GLOBAL FUNCTION DECLARATION **/
extern BufReq_ReturnType PduR_CanTpStartOfReception (
    PduIdType id,
    const PduInfoType* info,
    PduLengthType TpSduLength,
    PduLengthType* bufferSizePtr
);

extern BufReq_ReturnType PduR_CanTpCopyRxData (
    PduIdType id,
    const PduInfoType* info,
    PduLengthType* bufferSizePtr
);

extern BufReq_ReturnType PduR_CanTpCopyTxData (
    PduIdType id,
    const PduInfoType* info,
    const RetryInfoType* retry,
    PduLengthType* availableDataPtr
);

extern Std_ReturnType CanIf_Transmit (
    PduIdType TxPduId,
    const PduInfoType* PduInfoPtr
);

extern void Dcm_TpRxIndication(
    PduIdType id,
    Std_ReturnType result
);

#endif
